1. Field of the Invention
The present invention relates to a memory array having a plurality of memory modules. More particularly, the present invention relates to a system and method of self-refresh for memory modules within a memory array to facilitate suspend states in computer systems (e.g., servers, routers, etc.), which result in power savings, while still being capable of supporting large memory structures.
2. Discussion of the Related Art
Server systems that support large memory structures utilize a significant amount of power during normal usage. Server systems may undergo periods of low usage. However, there has not been much focus on incorporating suspend or sleep states in server systems during low usage. Incorporating suspend or sleep states in server systems would provide significant power savings, especially in large server farms.
Computer systems that implement large amounts of random access memory (RAM) have power issues with implementing sleep or suspend states. These power issues stem from the current draw associated with a self-refresh cycle on the dynamic random access memory (DRAM) that is utilized. For example, when the DRAM is in an Advanced Configuration and Power Interface (ACPI) S3 state (suspend-to-RAM) (the Advanced Configuration and Power Interface (ACPI) Specification, Revision 2.0, Jul. 27, 2000, co-developed by Compaq, Intel, Microsoft, Phoenix, and Toshiba), it generates a refresh cycle based on asynchronous internal clocks. When this refresh is engaged, the power current jumps by approximately 492 mA. When considering a worst-case scenario of all of the dual-inline memory modules (DIMMs) having the DRAM components refreshing at once (in the S3 state, there are no global clocks present, all timers are based on internal asynchronous clocks), the system provides 530 mA per DIMM slot, or 4.24A in an eight (8) DIMM memory array. Such amount of required current is a significant barrier to supporting suspend or sleep states, such as a S3 state, in the computer system.
Accordingly, there is a need for a computer system implementation that is capable of conserving power during low usage periods.